<?php

set_time_limit(0);
$ip=$_SERVER['REMOTE_ADDR'];
$sql = "SELECT
     personas.`DNI` AS personas_DNI,
     personas.`APELLIDO` AS personas_APELLIDO,
     personas.`NOMBRE` AS personas_NOMBRE,
     personas.`SEXO` AS personas_SEXO,
     personas.`fecnac` AS personas_fecnac,
     libros_actas.`path` AS libros_actas_path
FROM
     `Roles_de_personas_en_actas` Roles_de_personas_en_actas INNER JOIN `personas` personas ON Roles_de_personas_en_actas.`idPersona` = personas.`id`
     INNER JOIN `actas` actas ON Roles_de_personas_en_actas.`idActa` = actas.`id`
     INNER JOIN `libros_actas` libros_actas ON actas.`idLibro` = libros_actas.`id`
WHERE
     Roles_de_personas_en_actas.`idRol` = 13";

$link = Conectarse();
$result = mysql_query($sql, $link);
$_connectionString = "host=localhost port=5432 dbname=rp_principal user=postgres password=tarzan147258369";
$insert = pg_pconnect($_connectionString);

$consulta = pg_query($insert, "SELECT CURRVAL(pg_get_serial_sequence('auditoria','id'));");
$auditoria = pg_fetch_array($consulta);
$idAuditoria = $auditoria[0] + 1;

$consultaReg = pg_query($insert, "SELECT CURRVAL(pg_get_serial_sequence('principal','id'))");
$registro = pg_fetch_array($consultaReg);
$idPrincipal = $registro[0] + 1;
pg_query($insert, 'BEGIN work;');
while ($row = mysql_fetch_array($result)) {


    
    
    $_query_existe_principal = 'SELECT
     principal."dni" AS principal_dni
FROM
     "public"."principal" principal
WHERE
     principal."dni" = ' . $row["personas_DNI"];
    
    $result_existe=  pg_query($insert,$_query_existe_principal);
    $existe = pg_num_rows($result_existe);



    if ($existe == 0) {
        $registro = "INSERT INTO principal(id,
            dni, sexo, nombre, apellido, fechanacimiento, imagen, cantmod)
    VALUES (" . $idPrincipal . ",
    " . $row["personas_DNI"] . ",
    '" . ($row["personas_SEXO"]) . "', 
    '" . $row["personas_NOMBRE"] . "', 
    '" . pg_escape_string($row["personas_APELLIDO"]) . "', 
    " . ($row["personas_fecnac"] == '0000-00-00' ? "NULL" : "'" . $row["personas_fecnac"] . "'") . ", 
    '" . $row["libros_actas_path"] . "', 
    0);
";

//SELECT setval('table_id_seq', 10000)
        $registroAuditoria = "INSERT INTO auditoria(id,
            usuarios_id, accion, fecha, hora,ip)
    VALUES ($idAuditoria,
    " . $_GET['pAdeas'] . ",' 
        Registro Nuevo con DNI: " . $row["personas_DNI"] . "',
            '" . date("d-m-Y") . "',
           '" . date('H:m:s') . "',
               '" . $ip . "'
            );";
    } else {
        $cant_mod = $row["libros_actas_path"] + 1;
        $registro = "UPDATE principal
   SET sexo='" . ($row["personas_SEXO"]) . "', 
       nombre='" . $row["personas_NOMBRE"] . "', 
       apellido='" . pg_escape_string($row["personas_APELLIDO"]) . "',
       fechanacimiento=" . ($row["personas_fecnac"] == '0000-00-00' ? "NULL" : "'" . $row["personas_fecnac"] . "'") . ", 
       imagen='" . $row["libros_actas_path"] . "',
       cantmod=$cant_mod
 WHERE dni=" . $row["personas_DNI"];


        $registroAuditoria = "INSERT INTO auditoria(id,
            usuarios_id, accion, fecha, hora,ip)
    VALUES ($idAuditoria,
    " . $_GET['pAdeas'] . ", 
        'Registro Actualizado con DNI: " . $row["personas_DNI"] . "',
            '" . date("d-m-Y") . "',
            '" . date('H:m:s') . "',
                '" . $ip . "'
            );";
    }

    $ejecutar = pg_query($insert, $registro);

    if (!$ejecutar) {
        echo $registro;
        pg_query($insert, 'Rollback');
        pg_close($insert);
        break;
    }

    $ejecutarAuditoria = pg_query($insert, $registroAuditoria);

    if (!$ejecutarAuditoria) {

        pg_query($insert, 'Rollback');
        pg_close($insert);
    }
    $registroAuditoria="";
    $idPrincipal++;
    $idAuditoria++;
}
mysql_free_result($result);
mysql_close($link);

pg_query($insert, 'COMMIT');
pg_close($insert);

function Conectarse() {
    if (!($link = mysql_connect("localhost", "root", "root"))) {
        echo "Error conectando a la base de datos.";
        exit();
    }
    if (!mysql_select_db("sintys", $link)) {
        echo "Error seleccionando la base de datos.";
        exit();
    }
    return $link;
}

?>
